Packet switching networks are commonly employed to transfer digital information over long distances. More recent packet switching networks are also known as cell relay networks. A typical cell relay network is comprised of a set of cell switching communication controllers coupled together for communication over long distance communication links. A cell relay network enables a variety of communication devices coupled to local communication links to share the common carrier communication links. A cell relay network enables the communication devices to transfer digital information over the common carrier communication links on a demand driven basis. The demand driven sharing of the common carrier communication links reduces the cost of maintaining a long distance communication network.
The capacity of a cell network is usually limited by the bandwidth and connectivity of the cell switching communication controllers. For example, the topology of a typical cell network requires the communication controllers to perform high speed tandem switching. Tandem switching occurs when a communication controller receives a communication cell over one communication link, and transmits the communication cell over another communication link to route the communication cell to the proper destination. The communication controllers must allocate sufficient bandwidth to perform tandem switching for new communication devices added to the cell network.
Each communication controller typically supports only a limited number of communication links. Moreover, the capability of a communication controller to perform tandem switching is limited by the bandwidth of the cell switching mechanism inside the communication controller. The bandwidth limitation of the communication controllers limits the capacity of the cell network because the addition of new communication devices to the cell network exhausts available bandwidth.
A typical prior communication controller is comprised of a set of communication modules for transmitting and receiving high speed digital information over a communication link. During tandem switching, one communication module receives a communication cell over a communication link, and transfers the communication cell to another communication module which transmits the communication cell over another communication link.
In some prior communication controllers, communication cells are transferred between the communication modules over a shared communication bus. Such shared communication buses suffer from limited bandwidth because of the physical characteristics of the bus signal lines. For example, the capacitive characteristics of the bus signal lines creates a minimum charging and settling time for the bus signals, thereby limiting bus bandwidth.
In addition, a shared communication bus usually achieves maximum bandwidth at an optimal bus impedance value. Each communication module coupled to the communication bus contributes to overall bus impedance. Unfortunately, the overall impedance of the communication bus moves away from the optimal bus impedance value when communication modules are installed or removed from the communication controller.
Moreover, the switching skew between the various transmitting agents on a shared communication bus can cause signal overlap and current spikes on the bus. The current spikes cause bus noise and increase system power consumption.
One method of increasing the bandwidth of a shared bus is to increase the bus width by increasing the number of bus signal lines. A widened shared bus requires increased data buffer circuitry on each communication module coupled to the bus. Unfortunately, the increased data buffer circuitry increases the cost and power consumption of the communication modules and of the overall communication controller.
A communication controller may employ a Batcher-Banyan or Benes Network as a switch fabric to enable high bandwidth transfer of communication cells between the communication modules. However, such fabrics typically require custom very large scale integrated circuit (VLSI) chip implementations, which increase system cost. Moreover, a lack of internal control of such networks increases the difficulty of predicting and controlling congestion in the switch circuitry.
A communication controller may employ a collection of switched serial communication lines to transfer communication cells between communication modules. Such a communication controller must independently synchronize the serial data transmission over each of the switched serial communication lines.
One prior method of synchronizing the serial data transmissions is to distribute a separate clock signal for each serial data signal. Unfortunately, such a method doubles the number of signal lines that must be switched, and greatly increases the cost and complexity of a switching circuit.
Another prior method of synchronizing the serial data transmissions is to embed a clock signal into the serial data signals. A disadvantage of such a method is that the switching circuit must have twice the bandwidth than would be required if the clock signal were not embedded into the serial data signals.
Another prior method of synchronizing the serial data signals is to employ a phase-locked loop circuit (PLL). A typical PLL circuit requires hundreds of nanoseconds to achieve synchronization. Unfortunately, the continuous switching of the serial communication lines renders PLL circuits unsuitable for use with high bandwidth switched serial lines.